﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using XProject.DataVisit.DAL;
using XProject.DataVisit.DAL.BaseManager;
using XProject.DataVisit.DAL.Advertisement;
using XProject.DataVisit.DAL.Flow;
using XProject.DataVisit.DAL.Doc;

namespace XProject.DataVisit.Factory
{
    public class DaoFactory
    {
        public static DDemo DemoDao
        {
            get
            {
                return ApplicationFactory.GetTypedObject<DDemo>("dDemo");
            }
        }

        #region 后台管理员
        /// <summary>
        /// 后台管理员
        /// </summary>
        public static DUserInfo UserInfoDao
        {
            get
            {
                return ApplicationFactory.GetTypedObject<DUserInfo>("dUserInfo");
            }
        }
        #endregion

        #region 区域管理
        /// <summary>
        /// 区域管理
        /// </summary>
        public static DArea AreaDao
        {
            get
            {
                return ApplicationFactory.GetTypedObject<DArea>("dArea");
            }
        }
        #endregion

        #region 设备管理
        /// <summary>
        /// 设备管理
        /// </summary>
        public static DEquipment EquipmentDao
        {
            get
            {
                return ApplicationFactory.GetTypedObject<DEquipment>("dEquipment");
            }
        }
        #endregion

        #region 广告管理
        /// <summary>
        /// 广告管理
        /// </summary>
        public static DAdvertisement AdvertisementDao
        {
            get
            {
                return ApplicationFactory.GetTypedObject<DAdvertisement>("dAdvertisement");
            }
        }
        /// <summary>
        /// 广告管理
        /// </summary>
        public static DGY GYDao
        {
            get
            {
                return ApplicationFactory.GetTypedObject<DGY>("dGY");
            }
        }
        #endregion

        #region 模版管理
        /// <summary>
        /// 模版管理
        /// </summary>
        public static DModel ModelDao
        {
            get
            {
                return ApplicationFactory.GetTypedObject<DModel>("dModel");
            }
        }
        #endregion

        #region 绑定广告到设备
        /// <summary>
        /// 绑定广告到设备
        /// </summary>
        public static DBindAdvertisement BindAdvertisementDao
        {
            get
            {
                return ApplicationFactory.GetTypedObject<DBindAdvertisement>("dBindAdvertisement");
            }
        }
        #endregion

        #region 模板类别管理
        /// <summary>
        /// 模板类别实例
        /// </summary>
        public static DAdvertisementModel AdvertisementModelDao
        {
            get
            {
                return ApplicationFactory.GetTypedObject<DAdvertisementModel>("dAdvertisementModel");
            }
        }
        #endregion

        #region 角色管理
        /// <summary>
        /// 角色实例
        /// </summary>
        public static DRole RoleDao
        {
            get
            {
                return ApplicationFactory.GetTypedObject<DRole>("dRole");
            }
        }
        #endregion

        #region 菜单管理
        /// <summary>
        /// 菜单实例
        /// </summary>
        public static DMenu MenuDao
        {
            get
            {
                return ApplicationFactory.GetTypedObject<DMenu>("dMenu");
            }
        }
        #endregion

        #region 权限管理
        /// <summary>
        ///权限实例
        /// </summary>
        public static DAccess AccessDao
        {
            get
            {
                return ApplicationFactory.GetTypedObject<DAccess>("dAccess");
            }
        }
        #endregion

        #region 流程管理
        /// <summary>
        ///流程名称实例
        /// </summary>
        public static DFlow FlowNameDao
        {
            get
            {
                return ApplicationFactory.GetTypedObject<DFlow>("dFlow");
            }
        }
        /// <summary>
        ///流程节点实例
        /// </summary>
        public static DFlowNode FlowNodeDao
        {
            get
            {
                return ApplicationFactory.GetTypedObject<DFlowNode>("dFlowNode");
            }
        }
        /// <summary>
        ///流程流转实例
        /// </summary>
        public static DFlowTransf FlowTransfDao
        {
            get
            {
                return ApplicationFactory.GetTypedObject<DFlowTransf>("dFlowTransf");
            }
        }
        /// <summary>
        ///流程审批记录实例
        /// </summary>
        public static DFlowRecord FlowRecordDao
        {
            get
            {
                return ApplicationFactory.GetTypedObject<DFlowRecord>("dFlowRecord");
            }
        }
        #endregion

        #region 广告申请单管理
        /// <summary>
        ///流程名称实例
        /// </summary>
        public static DDocumentInfo DocumentInfoDao
        {
            get
            {
                return ApplicationFactory.GetTypedObject<DDocumentInfo>("dDocumentInfo");
            }
        }
        #endregion
    }
}